1. Field of the Invention
The present invention relates generally to an Automatic Repeat reQuest (ARQ) method and apparatus in a mobile communication system, and in particular, to a method and apparatus for preventing small packets from being independently transmitted, and guaranteeing transmission reliability of upper layer packets which are independently transmitted.
2. Description of the Related Art
Since the normal ARQ technique in which a receiver determines whether to send a retransmission request using a gap between sequence numbers is not applied to the independently transmitted upper layer packets, reliability of the transmission is guaranteed using polling/timer-based retransmission.
The term ‘polling/timer-based retransmission’ refers to a technique for transmitting an indicator for ordering a receiver to report an acknowledgement (ACK) while transmitting a packet that should be guaranteed transmission reliability, and automatically retransmitting the packet if the acknowledgement is not reported within a predetermined time. In this scheme, for each upper layer packet, its reception status report is transmitted.
However, in the current service, it is frequent that an upper layer packet in one direction generates a response packet in the opposite direction, an exchange of the upper layer packet and its reception status report occurs continuously. For example, referring to FIG. 1, in a Transmission Control Protocol (TCP)-based packet service, a TCP packet or Layer 3 (L3) control request message 115 generates a TCP ACK or L3 control response message 120 in the opposite direction to the transmission direction. The L3 control message is an arbitrary control message generated in an upper layer of Layer 2 (L2), and can be, for example, a control message of an Internet Protocol (IP) call control protocol such as Session Initiation Protocol (SIP), or a control protocol of a radio network such as Radio Resource Control (RRC).
With reference to FIG. 2, a description will be made of a situation where the exchange of the TCP packet or L3 control request message and the TCP ACK or L3 control response message is performed in Radio Link Control (RLC) which is an L2 ARQ protocol.
Referring to FIG. 2, if one RLC device 210 transmits a TCP packet or L3 control request message to another RLC device 205 in step 215, the other RLC device 205 transmits a reception status report for the TCP packet or L3 control request message to the RLC device 210 in step 225. After a lapse of a predetermined time, if a TCP ACK or L3 control response message occurs, the other RLC device 205 transmits it to the RLC device 210 in step 235, and the RLC device 210 transmits a reception status report for the TCP ACK or L3 control response message to the other RLC device 205 in step 240.
More specifically, in step 215, the RLC device 205 resegments the TCP packet or L3 control request message in a size suitable for transmission through a radio channel, attaches a sequence number to the segment, and transmits the segment through the radio channel. The sequence number-attached segment is called an ‘RLC Protocol Data Unit (PDU)’. In particular, the RLC device 210, when transmitting the last RLC PDU, includes polling information in the RLC PDU. The polling information is for requesting the other RLC device to send a reception status report. In order to check the transmission status of the transmitted RLC PDUs, including the last RLC PDU, the RLC device generally transmits the last RLC PDU along with the polling information.
In preparation for the case where an RLC PDU containing the polling information is lost during its transmission or a status report responsive to the polling is lost during its transmission, the RLC device 210 performs timer-based retransmission on the RLC PDU containing the polling information. In other words, the RLC device 210 starts a polling timer 245 while transmitting an RLC PDU containing polling information, and retransmits the RLC PDU containing polling information if no status report is received until the polling timer expires.
Upon receiving the RLC PDU containing polling information, the RLC device 205 generates a status report and transmits the status report to the RLC device 210 in step 225. At this point, an L2 processing delay 220 occurs.
Since TCP data or L3 control request message is included in the RLC PDU containing polling information, the TCP data or L3 control request message is delivered to an upper layer. Then the upper layer, after an L3 transmission (processing) delay 230, generates a TCP ACK or L3 control response message and delivers it to the RLC device 205. In response, the RLC device 205 generates the TCP ACK or L3 control response message into an RLC PDU and transmits it to the RLC device 210 in step 235. Since a size of the TCP ACK or L3 control message is only several tens of bytes in most cases, it is included in one RLC PDU before being transmitted. In other words, since the RLC PDU containing the TCP ACK or L3 control message is the last RLC PDU, polling information is also included in the RLC PDU before being transmitted. As a response to the polling, the RLC device 210 transmits an L2 status report in step 240.
As described above, the last RLC PDU containing TCP data, as polling information is included therein, induces an L2 status report from the opposite side. The TCP data also causes an L3 response message such as TCP ACK, and the L3 response message such as TCP ACK also causes an L2 status report.
Frequently transmitting and receiving the small-sized packets over a radio channel individually in this way may cause a decrease in efficiency of radio transmission resources.